package com.pj.project4sp.sp_large_database;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;

import com.pj.utils.sg.*;

/**
 * 工具类：sp_large_database -- 模型数据表
 * @author lh 
 *
 */
@Component
public class SpLargeDatabaseUtil {

	
	/** 底层 Mapper 对象 */
	public static SpLargeDatabaseMapper spLargeDatabaseMapper;
	@Autowired
	private void setSpLargeDatabaseMapper(SpLargeDatabaseMapper spLargeDatabaseMapper) {
		SpLargeDatabaseUtil.spLargeDatabaseMapper = spLargeDatabaseMapper;
	}
	
	
	/** 
	 * 将一个 SpLargeDatabase 对象进行进行数据完整性校验 (方便add/update等接口数据校验) [G] 
	 */
	static void check(SpLargeDatabase s) {
		AjaxError.throwByIsNull(s.id, "[id，--主键、自增] 不能为空");		// 验证: id，--主键、自增 
		AjaxError.throwByIsNull(s.name, "[名称] 不能为空");		// 验证: 名称 
		AjaxError.throwByIsNull(s.material, "[材质] 不能为空");		// 验证: 材质 
		AjaxError.throwByIsNull(s.texture, "[纹理] 不能为空");		// 验证: 纹理 
		AjaxError.throwByIsNull(s.chartlet, "[贴图] 不能为空");		// 验证: 贴图 
		AjaxError.throwByIsNull(s.type, "[类型] 不能为空");		// 验证: 类型 
		AjaxError.throwByIsNull(s.url, "[上传地址] 不能为空");		// 验证: 上传地址 
		AjaxError.throwByIsNull(s.transparent, "[透明开启] 不能为空");		// 验证: 透明开启 
		AjaxError.throwByIsNull(s.opacity, "[透明] 不能为空");		// 验证: 透明 
		AjaxError.throwByIsNull(s.visible, "[可见] 不能为空");		// 验证: 可见 
		AjaxError.throwByIsNull(s.side, "[一边、边缘] 不能为空");		// 验证: 一边、边缘 
		AjaxError.throwByIsNull(s.color, "[颜色] 不能为空");		// 验证: 颜色 
		AjaxError.throwByIsNull(s.emissive, "[] 不能为空");		// 验证: (材质的放射（光）颜色) 
		AjaxError.throwByIsNull(s.wireframe, "[将几何体渲染为线框] 不能为空");		// 验证: 将几何体渲染为线框 
		AjaxError.throwByIsNull(s.roughness, "[材质的粗糙程度0-1] 不能为空");		// 验证: 材质的粗糙程度 0-1 
		AjaxError.throwByIsNull(s.metalness, "[材质与金属的相似度0-1] 不能为空");		// 验证: 材质与金属的相似度 0-1 
		AjaxError.throwByIsNull(s.createTime, "[创建时间] 不能为空");		// 验证: 创建时间 
		AjaxError.throwByIsNull(s.updateTime, "[修改时间] 不能为空");		// 验证: 修改时间 
	}

	/** 
	 * 获取一个SpLargeDatabase (方便复制代码用) [G] 
	 */ 
	static SpLargeDatabase getSpLargeDatabase() {
		SpLargeDatabase s = new SpLargeDatabase();	// 声明对象 
		s.id = 0L;		// id，--主键、自增 
		s.name = "";		// 名称 
		s.material = "";		// 材质 
		s.texture = "";		// 纹理 
		s.chartlet = "";		// 贴图 
		s.type = 0;		// 类型 
		s.url = "";		// 上传地址 
		s.transparent = 0;		// 透明开启 
		s.opacity = 0;		// 透明 
		s.visible = 0;		// 可见 
		s.side = 0;		// 一边、边缘 
		s.color = "";		// 颜色 
		s.emissive = "";		// (材质的放射（光）颜色) 
		s.wireframe = 0L;		// 将几何体渲染为线框 
		s.roughness = 0L;		// 材质的粗糙程度 0-1 
		s.metalness = 0L;		// 材质与金属的相似度 0-1
		return s;
	}
	
	
	
	
	
}
